package pl.koziolekweb.szkola.AVTablice;

// AV-Tablice/Main.java
 
import javax.swing.JOptionPane;

public class Main {

    public static void main(String[] args)
    {
        String[] przedmioty = {
            "Analiza","Programowanie","Angielski"
        };

        // GRUPA 0

        String[] stud0 = {
            "Jan",  "Marek", "Karol","Heniek",
            "Piotr","Wojtek","Jacek"
        };

          // trzywymiarowa tablica stopni :
          // pierwszy indeks - numer studenta (0..6);
          // drugi indeks - numer przedmiotu (0..2);
          // trzeci indeks numeruje oceny
        int[][][] oceny0 = {
          //  Analiza  Programowanie  Angielski
            { {3,4,3}, {4,3,3,4,4,3}, {4,3,3} },  // stud. 0
            { {3,5},   {5,2,3,3,4},   {2,4}   },  // stud. 1
            { {5,4,4}, {5,5,5,4},     {3}     },  // stud. 2
            { {3,4,3}, {4,3,3,3,3},   {3,3,4} },  // stud. 3
            { {4,3},   {4,3,3},       {5,3}   },  // stud. 4
            { {5,3},   {4,2,3},       {3,3}   },  // stud. 5
            { {3,2},   {4,3,3},       {5,3}   },  // stud. 6
        };

        Grupa gr0 = new Grupa(stud0,przedmioty,oceny0);

        // GRUPA 1

        String[] stud1 = {
            "Ania","Kasia","Ula",  "Ela",
            "Maja","Magda","Marta","Gosia"
        };

        int[][][] oceny1 = {
          //  Analiza  Programowanie  Angielski
            { {3,4,3}, {4,3,3,4,3},   {4,3,3} },  // stud. 0
            { {2,5},   {5,2,4,3,4},   {2,4}   },  // stud. 1
            { {5,4,4}, {5,5,4,4},     {5}     },  // stud. 2
            { {3,4,3}, {4,3,3,3,3},   {3,3,4} },  // stud. 3
            { {5,3},   {4,3,3},       {5,3}   },  // stud. 4
            { {5,5,5}, {4,2},         {3,3,4} },  // stud. 5
            { {3,2},   {4,3,3},       {5,3}   },  // stud. 6
            { {5,4},   {5,5,4},       {5,4}   },  // stud. 7
        };

        Grupa gr1 = new Grupa(stud1,przedmioty,oceny1);

        // BEZ DWOJ ==============================
        System.out.println("Bez 2 gr0: " + gr0.ileBez2());
        System.out.println("Bez 2 gr1: " + gr1.ileBez2());


        // SREDNIE Z OCEN ========================

        // uzytkownik wybiera przedmiot...
        int p = JOptionPane.showOptionDialog(
                     null, "Wybierz przedmiot:", "MENU", 0,
                     JOptionPane.QUESTION_MESSAGE, null,
                     przedmioty,przedmioty[0]);
        if (p == JOptionPane.CLOSED_OPTION) System.exit(0);

        System.out.println("\nSREDNIE z " +
                            przedmioty[p] + "\n");

        // srednie studentow grupy 1 z wybranego przedmiotu
        double[] srednie = gr1.srednieZPrzedmiotu(p);
        for (int s = 0; s < gr1.getIluStudentow(); ++s)
            System.out.printf("%10s  %4.2f\n",
                    gr1.getStudent(s),srednie[s]);


        // DO NAGRODY ============================
        System.out.print("\nDO NAGRODY Z GR0: ");
        String[] nagrody = gr0.doNagrody();
        for (int i = 0; i < nagrody.length; ++i)
            System.out.print(nagrody[i] + " ");
        System.out.println();

        System.out.print("DO NAGRODY Z GR1: ");
        nagrody = gr1.doNagrody();
        for (int i = 0; i < nagrody.length; ++i)
            System.out.print(nagrody[i] + " ");
        System.out.println();

        System.exit(0);
    }
}
